Skip to content

loader 执行顺序

执行顺序

相同优先级的 loader 执行顺序为:从右到左,从下到上。(pitch 情况下,则反过来) 4 类 loader 的执行优级为:pre > normal > inline > post

js
const compose =
  (...fns) =>
  (x) =>
    fns.reduceRight((v, f) => f(v), x);

enforce 类型

post(后置)+inline(内联)+normal(正常)+pre(前置)可以通过 enforce 属性去改变执行顺序

enforce:‘pre’ 前置 权重最高 enforce:‘normal’ 不变 权重第二 enforce:‘inline’ 行内 权重第三 enforce:‘post’ 后置 权重第四

前缀的作用

内联 loader 可以通过添加不同前缀,跳过其他类型 loader。

! 跳过 normal -! 跳过 pre 和 normal !! 跳过 pre、 normal 和 post

这些前缀在很多场景下非常有用

例子

md
pitch-post-loader1.js
pitch-post-loader2.js

pitch-inline-loader1.js
pitch-inline-loader2.js

pitch-normal-loader1.js
pitch-normal-loader2.js

pitch-pre-loader1.js
pitch-pre-loader2.js

pre-loader2
pre-loader1

normal-loader2
normal-loader1

inline-loader2
inline-loader1

post-loadder2
post-loadder1

在 MIT 许可下发布